{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 交易系统(Aberration)——趋势跟踪系统股票修改版\n",
    "\n",
    "---\n",
    "\n",
    "### 1.基本原理\n",
    "\n",
    "    股票价格多围绕某一价格上下波动。当股价远离基准价格超过一定幅度则可能形成长期趋势，\n",
    "    而短期股价偏离基准价格过多则可能因过度偏离均值而形成大幅回撤甚至趋势终止。\n",
    "    \n",
    "    由此以观察期内均线作为基准价格，以观察期内标准差的一定倍数作为开仓价或止盈价，采用移动止损方式进行止损构建此策略。\n",
    "\n",
    "\n",
    "- 开仓条件    \n",
    "  \n",
    "  当日最高价 > 均价 +　开仓触发倍数 × 观察期内标准差最大值\n",
    "\n",
    "\n",
    "- 止盈条件  \n",
    "  \n",
    "  当天最高价 > 均价 + 止盈触发倍数 × 观察期内标准差最大值\n",
    "    \n",
    "\n",
    "- 止损条件  \n",
    "  \n",
    "  同样结合了移动止损和固定止损两种止损模式；\n",
    "  \n",
    "  当天最低价 < max(均价， 开仓价 - 止损触发倍数 × 开仓时观察期内标准差最大值) \n",
    "  \n",
    "  均价：移动止损；开仓价 - 止损触发倍数 × 开仓时观察期内标准差最大值：固定止损\n",
    "  \n",
    "  注意：\n",
    "  \n",
    "  \n",
    "- 考虑了开仓当天也触发了平仓信号的近似处理；  \n",
    "\n",
    "\n",
    "- 用观察期内标准差的最大值开仓的原因是：在震荡行情的时候，避免频繁开仓；更加稳定\n",
    "  "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "---\n",
    "\n",
    "### 2.策略实现"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2.1 数据获取"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "import tushare as ts\n",
    "import matplotlib\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "code = '601688'\n",
    "length = 10             #  参考周期长度，用于确定计算标准差及移动平均的周期\n",
    "open_trigger = 0.5      #  价格向上偏离均线0.5倍观察期内标准差的最大值开仓；\n",
    "stopwin_trigger = 3     #  价格向上偏离均线3倍观察期内标准差的最大值止盈；\n",
    "stoplose_trigger = 1    #  移动止损；跌破均值移动止损；固定止损：开仓价向下偏离观察期内标准差的最大值；"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "本接口即将停止更新，请尽快使用Pro版接口：https://tushare.pro/document/2\n"
     ]
    }
   ],
   "source": [
    "data = ts.get_k_data(code, '2010-08-18', '2020-08-18')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "data.reset_index(inplace = True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>date</th>\n",
       "      <th>open</th>\n",
       "      <th>close</th>\n",
       "      <th>high</th>\n",
       "      <th>low</th>\n",
       "      <th>volume</th>\n",
       "      <th>code</th>\n",
       "      <th>pct_change</th>\n",
       "      <th>ma</th>\n",
       "      <th>std</th>\n",
       "      <th>std_limit</th>\n",
       "      <th>yes_ma</th>\n",
       "      <th>yes_std_limit</th>\n",
       "      <th>long_open_price</th>\n",
       "      <th>long_stopwin_price</th>\n",
       "      <th>long_open_signal</th>\n",
       "      <th>long_stopwin_signal</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>0</td>\n",
       "      <td>2010-08-18</td>\n",
       "      <td>12.531</td>\n",
       "      <td>12.419</td>\n",
       "      <td>12.626</td>\n",
       "      <td>12.376</td>\n",
       "      <td>208350.86</td>\n",
       "      <td>601688</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1</td>\n",
       "      <td>2010-08-19</td>\n",
       "      <td>12.453</td>\n",
       "      <td>12.574</td>\n",
       "      <td>12.747</td>\n",
       "      <td>12.393</td>\n",
       "      <td>329110.13</td>\n",
       "      <td>601688</td>\n",
       "      <td>0.012481</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2</td>\n",
       "      <td>2010-08-20</td>\n",
       "      <td>12.522</td>\n",
       "      <td>12.091</td>\n",
       "      <td>12.548</td>\n",
       "      <td>12.073</td>\n",
       "      <td>252488.47</td>\n",
       "      <td>601688</td>\n",
       "      <td>-0.038413</td>\n",
       "      <td>12.361333</td>\n",
       "      <td>0.246610</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>3</td>\n",
       "      <td>2010-08-23</td>\n",
       "      <td>12.065</td>\n",
       "      <td>12.073</td>\n",
       "      <td>12.212</td>\n",
       "      <td>11.979</td>\n",
       "      <td>144262.38</td>\n",
       "      <td>601688</td>\n",
       "      <td>-0.001489</td>\n",
       "      <td>12.289250</td>\n",
       "      <td>0.247645</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12.361333</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>4</td>\n",
       "      <td>2010-08-24</td>\n",
       "      <td>12.048</td>\n",
       "      <td>12.134</td>\n",
       "      <td>12.237</td>\n",
       "      <td>11.901</td>\n",
       "      <td>155949.60</td>\n",
       "      <td>601688</td>\n",
       "      <td>0.005053</td>\n",
       "      <td>12.258200</td>\n",
       "      <td>0.225426</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12.289250</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "         date    open   close    high     low     volume    code  pct_change  \\\n",
       "0  2010-08-18  12.531  12.419  12.626  12.376  208350.86  601688         NaN   \n",
       "1  2010-08-19  12.453  12.574  12.747  12.393  329110.13  601688    0.012481   \n",
       "2  2010-08-20  12.522  12.091  12.548  12.073  252488.47  601688   -0.038413   \n",
       "3  2010-08-23  12.065  12.073  12.212  11.979  144262.38  601688   -0.001489   \n",
       "4  2010-08-24  12.048  12.134  12.237  11.901  155949.60  601688    0.005053   \n",
       "\n",
       "          ma       std  std_limit     yes_ma  yes_std_limit  long_open_price  \\\n",
       "0        NaN       NaN        NaN        NaN            NaN              NaN   \n",
       "1        NaN       NaN        NaN        NaN            NaN              NaN   \n",
       "2  12.361333  0.246610        NaN        NaN            NaN              NaN   \n",
       "3  12.289250  0.247645        NaN  12.361333            NaN              NaN   \n",
       "4  12.258200  0.225426        NaN  12.289250            NaN              NaN   \n",
       "\n",
       "   long_stopwin_price  long_open_signal  long_stopwin_signal  \n",
       "0                 NaN                 0                    0  \n",
       "1                 NaN                 0                    0  \n",
       "2                 NaN                 0                    0  \n",
       "3                 NaN                 0                    0  \n",
       "4                 NaN                 0                    0  "
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "del data['index']\n",
    "data.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2.2 策略数据处理"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [],
   "source": [
    "data['pct_change'] = data['close'].pct_change()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [],
   "source": [
    "data['ma'] = data['close'].rolling(window=length, min_periods=3).mean()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [],
   "source": [
    "data['std'] = data['close'].rolling(window=length, min_periods=3).std()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>date</th>\n",
       "      <th>open</th>\n",
       "      <th>close</th>\n",
       "      <th>high</th>\n",
       "      <th>low</th>\n",
       "      <th>volume</th>\n",
       "      <th>code</th>\n",
       "      <th>pct_change</th>\n",
       "      <th>ma</th>\n",
       "      <th>std</th>\n",
       "      <th>std_limit</th>\n",
       "      <th>yes_ma</th>\n",
       "      <th>yes_std_limit</th>\n",
       "      <th>long_open_price</th>\n",
       "      <th>long_stopwin_price</th>\n",
       "      <th>long_open_signal</th>\n",
       "      <th>long_stopwin_signal</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>0</td>\n",
       "      <td>2010-08-18</td>\n",
       "      <td>12.531</td>\n",
       "      <td>12.419</td>\n",
       "      <td>12.626</td>\n",
       "      <td>12.376</td>\n",
       "      <td>208350.86</td>\n",
       "      <td>601688</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1</td>\n",
       "      <td>2010-08-19</td>\n",
       "      <td>12.453</td>\n",
       "      <td>12.574</td>\n",
       "      <td>12.747</td>\n",
       "      <td>12.393</td>\n",
       "      <td>329110.13</td>\n",
       "      <td>601688</td>\n",
       "      <td>0.012481</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2</td>\n",
       "      <td>2010-08-20</td>\n",
       "      <td>12.522</td>\n",
       "      <td>12.091</td>\n",
       "      <td>12.548</td>\n",
       "      <td>12.073</td>\n",
       "      <td>252488.47</td>\n",
       "      <td>601688</td>\n",
       "      <td>-0.038413</td>\n",
       "      <td>12.361333</td>\n",
       "      <td>0.246610</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>3</td>\n",
       "      <td>2010-08-23</td>\n",
       "      <td>12.065</td>\n",
       "      <td>12.073</td>\n",
       "      <td>12.212</td>\n",
       "      <td>11.979</td>\n",
       "      <td>144262.38</td>\n",
       "      <td>601688</td>\n",
       "      <td>-0.001489</td>\n",
       "      <td>12.289250</td>\n",
       "      <td>0.247645</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12.361333</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>4</td>\n",
       "      <td>2010-08-24</td>\n",
       "      <td>12.048</td>\n",
       "      <td>12.134</td>\n",
       "      <td>12.237</td>\n",
       "      <td>11.901</td>\n",
       "      <td>155949.60</td>\n",
       "      <td>601688</td>\n",
       "      <td>0.005053</td>\n",
       "      <td>12.258200</td>\n",
       "      <td>0.225426</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12.289250</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "         date    open   close    high     low     volume    code  pct_change  \\\n",
       "0  2010-08-18  12.531  12.419  12.626  12.376  208350.86  601688         NaN   \n",
       "1  2010-08-19  12.453  12.574  12.747  12.393  329110.13  601688    0.012481   \n",
       "2  2010-08-20  12.522  12.091  12.548  12.073  252488.47  601688   -0.038413   \n",
       "3  2010-08-23  12.065  12.073  12.212  11.979  144262.38  601688   -0.001489   \n",
       "4  2010-08-24  12.048  12.134  12.237  11.901  155949.60  601688    0.005053   \n",
       "\n",
       "          ma       std  std_limit     yes_ma  yes_std_limit  long_open_price  \\\n",
       "0        NaN       NaN        NaN        NaN            NaN              NaN   \n",
       "1        NaN       NaN        NaN        NaN            NaN              NaN   \n",
       "2  12.361333  0.246610        NaN        NaN            NaN              NaN   \n",
       "3  12.289250  0.247645        NaN  12.361333            NaN              NaN   \n",
       "4  12.258200  0.225426        NaN  12.289250            NaN              NaN   \n",
       "\n",
       "   long_stopwin_price  long_open_signal  long_stopwin_signal  \n",
       "0                 NaN                 0                    0  \n",
       "1                 NaN                 0                    0  \n",
       "2                 NaN                 0                    0  \n",
       "3                 NaN                 0                    0  \n",
       "4                 NaN                 0                    0  "
      ]
     },
     "execution_count": 33,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "以观察期内标准差最大值作为标准差限制指标"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [],
   "source": [
    "data['std_limit'] = data['std'].rolling(window=length).max()      #观察期内标准差的最大值"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "由于实盘中当天的日线级别参考指标未实现，例如当日ma计算时使用当日收盘价，因此应使用昨日参考指标指导当日交易"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [],
   "source": [
    "data['yes_ma'] = data['ma'].shift(1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [],
   "source": [
    "data['yes_std_limit'] = data['std_limit'].shift(1)            "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "计算当日开仓价和止盈价"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [],
   "source": [
    "data['long_open_price'] = data['yes_ma'] + data['yes_std_limit']*open_trigger    #计算每一天满足条件的开仓价；"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [],
   "source": [
    "data['long_stopwin_price'] = data['yes_ma'] + data['yes_std_limit']*stopwin_trigger   #计算每一天满足条件的止盈价；价格高于3倍观察期内标准差最大值止盈；"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>date</th>\n",
       "      <th>open</th>\n",
       "      <th>close</th>\n",
       "      <th>high</th>\n",
       "      <th>low</th>\n",
       "      <th>volume</th>\n",
       "      <th>code</th>\n",
       "      <th>pct_change</th>\n",
       "      <th>ma</th>\n",
       "      <th>std</th>\n",
       "      <th>std_limit</th>\n",
       "      <th>yes_ma</th>\n",
       "      <th>yes_std_limit</th>\n",
       "      <th>long_open_price</th>\n",
       "      <th>long_stopwin_price</th>\n",
       "      <th>long_open_signal</th>\n",
       "      <th>long_stopwin_signal</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>117</td>\n",
       "      <td>2010-08-18</td>\n",
       "      <td>12.531</td>\n",
       "      <td>12.419</td>\n",
       "      <td>12.626</td>\n",
       "      <td>12.376</td>\n",
       "      <td>208350.86</td>\n",
       "      <td>601688</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>118</td>\n",
       "      <td>2010-08-19</td>\n",
       "      <td>12.453</td>\n",
       "      <td>12.574</td>\n",
       "      <td>12.747</td>\n",
       "      <td>12.393</td>\n",
       "      <td>329110.13</td>\n",
       "      <td>601688</td>\n",
       "      <td>0.012481</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>119</td>\n",
       "      <td>2010-08-20</td>\n",
       "      <td>12.522</td>\n",
       "      <td>12.091</td>\n",
       "      <td>12.548</td>\n",
       "      <td>12.073</td>\n",
       "      <td>252488.47</td>\n",
       "      <td>601688</td>\n",
       "      <td>-0.038413</td>\n",
       "      <td>12.361333</td>\n",
       "      <td>0.246610</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>120</td>\n",
       "      <td>2010-08-23</td>\n",
       "      <td>12.065</td>\n",
       "      <td>12.073</td>\n",
       "      <td>12.212</td>\n",
       "      <td>11.979</td>\n",
       "      <td>144262.38</td>\n",
       "      <td>601688</td>\n",
       "      <td>-0.001489</td>\n",
       "      <td>12.289250</td>\n",
       "      <td>0.247645</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12.361333</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>121</td>\n",
       "      <td>2010-08-24</td>\n",
       "      <td>12.048</td>\n",
       "      <td>12.134</td>\n",
       "      <td>12.237</td>\n",
       "      <td>11.901</td>\n",
       "      <td>155949.60</td>\n",
       "      <td>601688</td>\n",
       "      <td>0.005053</td>\n",
       "      <td>12.258200</td>\n",
       "      <td>0.225426</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12.289250</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>122</td>\n",
       "      <td>2010-08-25</td>\n",
       "      <td>12.013</td>\n",
       "      <td>11.685</td>\n",
       "      <td>12.134</td>\n",
       "      <td>11.676</td>\n",
       "      <td>175617.69</td>\n",
       "      <td>601688</td>\n",
       "      <td>-0.037003</td>\n",
       "      <td>12.162667</td>\n",
       "      <td>0.308890</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12.258200</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>123</td>\n",
       "      <td>2010-08-26</td>\n",
       "      <td>11.685</td>\n",
       "      <td>11.711</td>\n",
       "      <td>11.840</td>\n",
       "      <td>11.659</td>\n",
       "      <td>110158.00</td>\n",
       "      <td>601688</td>\n",
       "      <td>0.002225</td>\n",
       "      <td>12.098143</td>\n",
       "      <td>0.329627</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12.162667</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>124</td>\n",
       "      <td>2010-08-27</td>\n",
       "      <td>11.711</td>\n",
       "      <td>11.754</td>\n",
       "      <td>11.789</td>\n",
       "      <td>11.633</td>\n",
       "      <td>90632.00</td>\n",
       "      <td>601688</td>\n",
       "      <td>0.003672</td>\n",
       "      <td>12.055125</td>\n",
       "      <td>0.328537</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12.098143</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>125</td>\n",
       "      <td>2010-08-30</td>\n",
       "      <td>11.823</td>\n",
       "      <td>12.039</td>\n",
       "      <td>12.125</td>\n",
       "      <td>11.763</td>\n",
       "      <td>188098.00</td>\n",
       "      <td>601688</td>\n",
       "      <td>0.024247</td>\n",
       "      <td>12.053333</td>\n",
       "      <td>0.307365</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12.055125</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>126</td>\n",
       "      <td>2010-08-31</td>\n",
       "      <td>11.953</td>\n",
       "      <td>11.832</td>\n",
       "      <td>11.961</td>\n",
       "      <td>11.771</td>\n",
       "      <td>143302.00</td>\n",
       "      <td>601688</td>\n",
       "      <td>-0.017194</td>\n",
       "      <td>12.031200</td>\n",
       "      <td>0.298119</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12.053333</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>127</td>\n",
       "      <td>2010-09-01</td>\n",
       "      <td>11.866</td>\n",
       "      <td>11.892</td>\n",
       "      <td>12.151</td>\n",
       "      <td>11.789</td>\n",
       "      <td>209583.00</td>\n",
       "      <td>601688</td>\n",
       "      <td>0.005071</td>\n",
       "      <td>11.978500</td>\n",
       "      <td>0.266894</td>\n",
       "      <td>NaN</td>\n",
       "      <td>12.031200</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>128</td>\n",
       "      <td>2010-09-02</td>\n",
       "      <td>12.073</td>\n",
       "      <td>11.970</td>\n",
       "      <td>12.143</td>\n",
       "      <td>11.927</td>\n",
       "      <td>146421.00</td>\n",
       "      <td>601688</td>\n",
       "      <td>0.006559</td>\n",
       "      <td>11.918100</td>\n",
       "      <td>0.166687</td>\n",
       "      <td>0.329627</td>\n",
       "      <td>11.978500</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>129</td>\n",
       "      <td>2010-09-03</td>\n",
       "      <td>11.979</td>\n",
       "      <td>11.797</td>\n",
       "      <td>12.013</td>\n",
       "      <td>11.720</td>\n",
       "      <td>181618.00</td>\n",
       "      <td>601688</td>\n",
       "      <td>-0.014453</td>\n",
       "      <td>11.888700</td>\n",
       "      <td>0.158531</td>\n",
       "      <td>0.329627</td>\n",
       "      <td>11.918100</td>\n",
       "      <td>0.329627</td>\n",
       "      <td>12.082914</td>\n",
       "      <td>12.906982</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>130</td>\n",
       "      <td>2010-09-06</td>\n",
       "      <td>11.858</td>\n",
       "      <td>12.401</td>\n",
       "      <td>12.419</td>\n",
       "      <td>11.832</td>\n",
       "      <td>491608.00</td>\n",
       "      <td>601688</td>\n",
       "      <td>0.051199</td>\n",
       "      <td>11.921500</td>\n",
       "      <td>0.222090</td>\n",
       "      <td>0.329627</td>\n",
       "      <td>11.888700</td>\n",
       "      <td>0.329627</td>\n",
       "      <td>12.053514</td>\n",
       "      <td>12.877582</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>131</td>\n",
       "      <td>2010-09-07</td>\n",
       "      <td>12.445</td>\n",
       "      <td>12.289</td>\n",
       "      <td>12.496</td>\n",
       "      <td>12.194</td>\n",
       "      <td>252996.00</td>\n",
       "      <td>601688</td>\n",
       "      <td>-0.009032</td>\n",
       "      <td>11.937000</td>\n",
       "      <td>0.242993</td>\n",
       "      <td>0.329627</td>\n",
       "      <td>11.921500</td>\n",
       "      <td>0.329627</td>\n",
       "      <td>12.086314</td>\n",
       "      <td>12.910382</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "           date    open   close    high     low     volume    code  \\\n",
       "117  2010-08-18  12.531  12.419  12.626  12.376  208350.86  601688   \n",
       "118  2010-08-19  12.453  12.574  12.747  12.393  329110.13  601688   \n",
       "119  2010-08-20  12.522  12.091  12.548  12.073  252488.47  601688   \n",
       "120  2010-08-23  12.065  12.073  12.212  11.979  144262.38  601688   \n",
       "121  2010-08-24  12.048  12.134  12.237  11.901  155949.60  601688   \n",
       "122  2010-08-25  12.013  11.685  12.134  11.676  175617.69  601688   \n",
       "123  2010-08-26  11.685  11.711  11.840  11.659  110158.00  601688   \n",
       "124  2010-08-27  11.711  11.754  11.789  11.633   90632.00  601688   \n",
       "125  2010-08-30  11.823  12.039  12.125  11.763  188098.00  601688   \n",
       "126  2010-08-31  11.953  11.832  11.961  11.771  143302.00  601688   \n",
       "127  2010-09-01  11.866  11.892  12.151  11.789  209583.00  601688   \n",
       "128  2010-09-02  12.073  11.970  12.143  11.927  146421.00  601688   \n",
       "129  2010-09-03  11.979  11.797  12.013  11.720  181618.00  601688   \n",
       "130  2010-09-06  11.858  12.401  12.419  11.832  491608.00  601688   \n",
       "131  2010-09-07  12.445  12.289  12.496  12.194  252996.00  601688   \n",
       "\n",
       "     pct_change         ma       std  std_limit     yes_ma  yes_std_limit  \\\n",
       "117         NaN        NaN       NaN        NaN        NaN            NaN   \n",
       "118    0.012481        NaN       NaN        NaN        NaN            NaN   \n",
       "119   -0.038413  12.361333  0.246610        NaN        NaN            NaN   \n",
       "120   -0.001489  12.289250  0.247645        NaN  12.361333            NaN   \n",
       "121    0.005053  12.258200  0.225426        NaN  12.289250            NaN   \n",
       "122   -0.037003  12.162667  0.308890        NaN  12.258200            NaN   \n",
       "123    0.002225  12.098143  0.329627        NaN  12.162667            NaN   \n",
       "124    0.003672  12.055125  0.328537        NaN  12.098143            NaN   \n",
       "125    0.024247  12.053333  0.307365        NaN  12.055125            NaN   \n",
       "126   -0.017194  12.031200  0.298119        NaN  12.053333            NaN   \n",
       "127    0.005071  11.978500  0.266894        NaN  12.031200            NaN   \n",
       "128    0.006559  11.918100  0.166687   0.329627  11.978500            NaN   \n",
       "129   -0.014453  11.888700  0.158531   0.329627  11.918100       0.329627   \n",
       "130    0.051199  11.921500  0.222090   0.329627  11.888700       0.329627   \n",
       "131   -0.009032  11.937000  0.242993   0.329627  11.921500       0.329627   \n",
       "\n",
       "     long_open_price  long_stopwin_price  long_open_signal  \\\n",
       "117              NaN                 NaN                 0   \n",
       "118              NaN                 NaN                 0   \n",
       "119              NaN                 NaN                 0   \n",
       "120              NaN                 NaN                 0   \n",
       "121              NaN                 NaN                 0   \n",
       "122              NaN                 NaN                 0   \n",
       "123              NaN                 NaN                 0   \n",
       "124              NaN                 NaN                 0   \n",
       "125              NaN                 NaN                 0   \n",
       "126              NaN                 NaN                 0   \n",
       "127              NaN                 NaN                 0   \n",
       "128              NaN                 NaN                 0   \n",
       "129        12.082914           12.906982                 0   \n",
       "130        12.053514           12.877582                 1   \n",
       "131        12.086314           12.910382                 1   \n",
       "\n",
       "     long_stopwin_signal  \n",
       "117                    0  \n",
       "118                    0  \n",
       "119                    0  \n",
       "120                    0  \n",
       "121                    0  \n",
       "122                    0  \n",
       "123                    0  \n",
       "124                    0  \n",
       "125                    0  \n",
       "126                    0  \n",
       "127                    0  \n",
       "128                    0  \n",
       "129                    0  \n",
       "130                    0  \n",
       "131                    0  "
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.head(15)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>date</th>\n",
       "      <th>pct_change</th>\n",
       "      <th>ma</th>\n",
       "      <th>std</th>\n",
       "      <th>yes_std_limit</th>\n",
       "      <th>long_open_price</th>\n",
       "      <th>long_stopwin_price</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>10</td>\n",
       "      <td>2010-09-01</td>\n",
       "      <td>0.005071</td>\n",
       "      <td>11.9785</td>\n",
       "      <td>0.266894</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>11</td>\n",
       "      <td>2010-09-02</td>\n",
       "      <td>0.006559</td>\n",
       "      <td>11.9181</td>\n",
       "      <td>0.166687</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>12</td>\n",
       "      <td>2010-09-03</td>\n",
       "      <td>-0.014453</td>\n",
       "      <td>11.8887</td>\n",
       "      <td>0.158531</td>\n",
       "      <td>0.329627</td>\n",
       "      <td>12.082914</td>\n",
       "      <td>12.906982</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>13</td>\n",
       "      <td>2010-09-06</td>\n",
       "      <td>0.051199</td>\n",
       "      <td>11.9215</td>\n",
       "      <td>0.222090</td>\n",
       "      <td>0.329627</td>\n",
       "      <td>12.053514</td>\n",
       "      <td>12.877582</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>14</td>\n",
       "      <td>2010-09-07</td>\n",
       "      <td>-0.009032</td>\n",
       "      <td>11.9370</td>\n",
       "      <td>0.242993</td>\n",
       "      <td>0.329627</td>\n",
       "      <td>12.086314</td>\n",
       "      <td>12.910382</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>15</td>\n",
       "      <td>2010-09-08</td>\n",
       "      <td>-0.005615</td>\n",
       "      <td>11.9905</td>\n",
       "      <td>0.240225</td>\n",
       "      <td>0.329627</td>\n",
       "      <td>12.101814</td>\n",
       "      <td>12.925882</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "          date  pct_change       ma       std  yes_std_limit  long_open_price  \\\n",
       "10  2010-09-01    0.005071  11.9785  0.266894            NaN              NaN   \n",
       "11  2010-09-02    0.006559  11.9181  0.166687            NaN              NaN   \n",
       "12  2010-09-03   -0.014453  11.8887  0.158531       0.329627        12.082914   \n",
       "13  2010-09-06    0.051199  11.9215  0.222090       0.329627        12.053514   \n",
       "14  2010-09-07   -0.009032  11.9370  0.242993       0.329627        12.086314   \n",
       "15  2010-09-08   -0.005615  11.9905  0.240225       0.329627        12.101814   \n",
       "\n",
       "    long_stopwin_price  \n",
       "10                 NaN  \n",
       "11                 NaN  \n",
       "12           12.906982  \n",
       "13           12.877582  \n",
       "14           12.910382  \n",
       "15           12.925882  "
      ]
     },
     "execution_count": 39,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.loc[10:15, ['date', 'pct_change', 'ma', 'std', 'yes_std_limit','long_open_price', 'long_stopwin_price']]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 2.3 计算开仓、止盈信号"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {},
   "outputs": [],
   "source": [
    "data['long_open_signal'] = np.where(data['high'] > data['long_open_price'], 1, 0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {},
   "outputs": [],
   "source": [
    "data['long_stopwin_signal'] = np.where(data['high'] > data['long_stopwin_price'], 1, 0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>date</th>\n",
       "      <th>long_open_signal</th>\n",
       "      <th>long_stopwin_signal</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>0</td>\n",
       "      <td>2010-08-18</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1</td>\n",
       "      <td>2010-08-19</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2</td>\n",
       "      <td>2010-08-20</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>3</td>\n",
       "      <td>2010-08-23</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>4</td>\n",
       "      <td>2010-08-24</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "         date  long_open_signal  long_stopwin_signal\n",
       "0  2010-08-18                 0                    0\n",
       "1  2010-08-19                 0                    0\n",
       "2  2010-08-20                 0                    0\n",
       "3  2010-08-23                 0                    0\n",
       "4  2010-08-24                 0                    0"
      ]
     },
     "execution_count": 42,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data[['date', 'long_open_signal', 'long_stopwin_signal']].head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 3 策略逻辑\n",
    "\n",
    "#### 策略要点：  \n",
    "    1. 当天有持仓，满足平仓条件进行平仓后，当天不再开仓；\n",
    "    2. 当天无持仓，满足开仓条件则进行开仓。开仓当日如果同时满足平仓条件，以第二日开盘价平仓；"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [],
   "source": [
    "flag = 0    # 记录持仓情况，0代表空仓，1代表持仓；"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 前12个数据因均值计算无效所以不作为待处理数据\n",
    "# 终止数据选择倒数第二个以防止当天止盈情况会以第二天开盘价平仓导致无数据情况发生\n",
    "# 最后一天不再进行操作；可能会面临最后一天开仓之后当天触发平仓，要用下一天开盘价卖出，无法得到； \n",
    "\n",
    "for i in range(12, (len(data)-1)):\n",
    "        # 有持仓进行平仓\n",
    "        if flag == 1:\n",
    "            # 计算止损价格，取均线和开仓价下移一定倍数标准差，两者的最大值作为止损价\n",
    "            stoplose_price = max(data.loc[i,'yes_ma'], long_open_price - long_open_delta * stoplose_trigger)    \n",
    "            # 多头止盈并计算当日收益率\n",
    "            if data.loc[i, 'long_stopwin_signal']: \n",
    "                data.loc[i, 'return'] = data.loc[i, 'long_stopwin_price']/data.loc[i-1, 'close'] - 1\n",
    "                flag = 0\n",
    "                \n",
    "            \n",
    "            # 多头移动止损并计算当日收益率\n",
    "            elif data.loc[i, 'low'] < stoplose_price:    \n",
    "            # 考虑到当天开盘价就低于止损价，无法止损的情况；\n",
    "            # 谨慎起见，在计算收益时，取止损价和开盘价的最小值；\n",
    "                data.loc[i, 'return'] = min(data.loc[i, 'open'], stoplose_price)/data.loc[i-1, 'close'] - 1\n",
    "                flag = 0\n",
    "            # 多头持仓并计算收益率\n",
    "            \n",
    "            else: \n",
    "                data.loc[i, 'return'] = data.loc[i, 'close']/data.loc[i-1, 'close'] - 1\n",
    "\n",
    "        \n",
    "        \n",
    "        \n",
    "        # 无持仓进行开仓\n",
    "        else:\n",
    "            if data.loc[i, 'long_open_signal']:    \n",
    "                #开仓时标记flag=1\n",
    "                flag = 1\n",
    "                # 需要比较当天的开盘价和开仓价，当开盘价高于开仓价时，只能以开盘价进行开仓，不能用开仓价;\n",
    "                # 否则对导致策略收益高估；\n",
    "                # 记录开仓价\n",
    "                long_open_price = max(data.loc[i, 'open'], data.loc[i, 'long_open_price'])    \n",
    "#                 long_open_price = data.loc[i, 'long_open_price']  #存在问题；\n",
    "                # 记录开仓时的10天内的标准差的最大值；是为了计算固定止损的价格；\n",
    "                long_open_delta = data.loc[i, 'yes_std_limit']\n",
    "                # 记录当天盈利情况\n",
    "                data.loc[i, 'return'] = data.loc[i, 'close']/long_open_price - 1\n",
    "                \n",
    "                                \n",
    "                # 计算止损价：多头移动止损，以均线和开仓价减一定倍数标准差，两者的最大值作为止损点\n",
    "                stoplose_price = max(data.loc[i,'yes_ma'], long_open_price - long_open_delta * stoplose_trigger)\n",
    "                # 如果开仓当天同时满足平仓条件，则以第二天开盘价平仓\n",
    "                # 这里做了一定的近似处理；\n",
    "                if (data.loc[i, 'low'] < stoplose_price     # 满足止损条件\n",
    "                 or data.loc[i, 'long_stopwin_signal']):    # 满足止盈条件\n",
    "                        # 记录此次操作盈利情况并将收益记录在开仓日\n",
    "                        data.loc[i, 'return'] = data.loc[i+1, 'open']/long_open_price - 1    \n",
    "                        flag = 0\n",
    "                "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>date</th>\n",
       "      <th>open</th>\n",
       "      <th>close</th>\n",
       "      <th>high</th>\n",
       "      <th>low</th>\n",
       "      <th>volume</th>\n",
       "      <th>code</th>\n",
       "      <th>pct_change</th>\n",
       "      <th>ma</th>\n",
       "      <th>std</th>\n",
       "      <th>std_limit</th>\n",
       "      <th>yes_ma</th>\n",
       "      <th>yes_std_limit</th>\n",
       "      <th>long_open_price</th>\n",
       "      <th>long_stopwin_price</th>\n",
       "      <th>long_open_signal</th>\n",
       "      <th>long_stopwin_signal</th>\n",
       "      <th>return</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>2415</td>\n",
       "      <td>2020-08-11</td>\n",
       "      <td>21.03</td>\n",
       "      <td>20.65</td>\n",
       "      <td>21.34</td>\n",
       "      <td>20.58</td>\n",
       "      <td>836710.0</td>\n",
       "      <td>601688</td>\n",
       "      <td>-0.020863</td>\n",
       "      <td>21.086</td>\n",
       "      <td>0.378570</td>\n",
       "      <td>0.673963</td>\n",
       "      <td>21.056</td>\n",
       "      <td>0.847210</td>\n",
       "      <td>21.479605</td>\n",
       "      <td>23.597631</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2416</td>\n",
       "      <td>2020-08-12</td>\n",
       "      <td>20.66</td>\n",
       "      <td>20.70</td>\n",
       "      <td>20.81</td>\n",
       "      <td>20.33</td>\n",
       "      <td>740679.0</td>\n",
       "      <td>601688</td>\n",
       "      <td>0.002421</td>\n",
       "      <td>21.056</td>\n",
       "      <td>0.397554</td>\n",
       "      <td>0.673963</td>\n",
       "      <td>21.086</td>\n",
       "      <td>0.673963</td>\n",
       "      <td>21.422982</td>\n",
       "      <td>23.107890</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2417</td>\n",
       "      <td>2020-08-13</td>\n",
       "      <td>20.71</td>\n",
       "      <td>20.63</td>\n",
       "      <td>20.90</td>\n",
       "      <td>20.51</td>\n",
       "      <td>526587.0</td>\n",
       "      <td>601688</td>\n",
       "      <td>-0.003382</td>\n",
       "      <td>21.056</td>\n",
       "      <td>0.397554</td>\n",
       "      <td>0.673963</td>\n",
       "      <td>21.056</td>\n",
       "      <td>0.673963</td>\n",
       "      <td>21.392982</td>\n",
       "      <td>23.077890</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2418</td>\n",
       "      <td>2020-08-14</td>\n",
       "      <td>20.53</td>\n",
       "      <td>20.92</td>\n",
       "      <td>20.94</td>\n",
       "      <td>20.48</td>\n",
       "      <td>552730.0</td>\n",
       "      <td>601688</td>\n",
       "      <td>0.014057</td>\n",
       "      <td>21.069</td>\n",
       "      <td>0.389942</td>\n",
       "      <td>0.603457</td>\n",
       "      <td>21.056</td>\n",
       "      <td>0.673963</td>\n",
       "      <td>21.392982</td>\n",
       "      <td>23.077890</td>\n",
       "      <td>0</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2419</td>\n",
       "      <td>2020-08-17</td>\n",
       "      <td>21.46</td>\n",
       "      <td>21.72</td>\n",
       "      <td>22.26</td>\n",
       "      <td>21.26</td>\n",
       "      <td>1853080.0</td>\n",
       "      <td>601688</td>\n",
       "      <td>0.038241</td>\n",
       "      <td>21.109</td>\n",
       "      <td>0.436309</td>\n",
       "      <td>0.569348</td>\n",
       "      <td>21.069</td>\n",
       "      <td>0.603457</td>\n",
       "      <td>21.370728</td>\n",
       "      <td>22.879370</td>\n",
       "      <td>1</td>\n",
       "      <td>0</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "            date   open  close   high    low     volume    code  pct_change  \\\n",
       "2415  2020-08-11  21.03  20.65  21.34  20.58   836710.0  601688   -0.020863   \n",
       "2416  2020-08-12  20.66  20.70  20.81  20.33   740679.0  601688    0.002421   \n",
       "2417  2020-08-13  20.71  20.63  20.90  20.51   526587.0  601688   -0.003382   \n",
       "2418  2020-08-14  20.53  20.92  20.94  20.48   552730.0  601688    0.014057   \n",
       "2419  2020-08-17  21.46  21.72  22.26  21.26  1853080.0  601688    0.038241   \n",
       "\n",
       "          ma       std  std_limit  yes_ma  yes_std_limit  long_open_price  \\\n",
       "2415  21.086  0.378570   0.673963  21.056       0.847210        21.479605   \n",
       "2416  21.056  0.397554   0.673963  21.086       0.673963        21.422982   \n",
       "2417  21.056  0.397554   0.673963  21.056       0.673963        21.392982   \n",
       "2418  21.069  0.389942   0.603457  21.056       0.673963        21.392982   \n",
       "2419  21.109  0.436309   0.569348  21.069       0.603457        21.370728   \n",
       "\n",
       "      long_stopwin_price  long_open_signal  long_stopwin_signal  return  \n",
       "2415           23.597631                 0                    0     NaN  \n",
       "2416           23.107890                 0                    0     NaN  \n",
       "2417           23.077890                 0                    0     NaN  \n",
       "2418           23.077890                 0                    0     NaN  \n",
       "2419           22.879370                 1                    0     NaN  "
      ]
     },
     "execution_count": 45,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.tail()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 4 计算策略收益率并可视化"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [],
   "source": [
    "data['return'].fillna(0, inplace=True)\n",
    "data['strategy_return'] = (data['return'] + 1).cumprod()\n",
    "data['stock_return'] = (data['pct_change'] + 1).cumprod()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "No handles with labels found to put in legend.\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlcAAAFACAYAAACRAFk6AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nOzdeXxU5b0/8M85s2Ym+wIhYd9EUKpARVGsV6J162atVqqtS9tbrVq1WvHXW+l2vRS1VhSvt9ZuFrcW606rKVIUBWVT2XcCZCN7MpPZznl+f5w5kzP7kkkywc/79fJlZuYsTzIk+eb7fJ/vIwkhBIiIiIgoK+ShHgARERHRiYTBFREREVEWMbgiIiIiyiIGV0RERERZxOCKiIiIKIsYXBERERFlEYMrIiIioixicEVEg6alpQU33XQTqqqqYLPZMGHCBDzxxBNhx2zYsAHz5s2D3W7HqFGjcO+990JRlNDrHo8H119/PU4//XRYrVZMnjw57v1eeuklzJ07Fw6HA0VFRZg/fz66urpCrx84cABXXHEFRowYAafTidNPPx3PPfdc2DWOHz+OG264AVVVVcjLy8PJJ5+MRx99NEtfESI6EZmHegBE9OnQ09ODc889F9XV1Xj22Wcxbtw4NDQ0wO/3h445cuQILrjgAnz1q1/Fk08+ib179+KGG26AEAJLliwBACiKAqvViu9+97t4//338d5778W831NPPYU77rgDv/zlL3HBBRdAkiR88sknMJlMoWO+8IUvoKKiAqtWrUJJSQlWrFiBhQsXYuzYsZg3bx4A4LrrrkNdXR3++te/oqqqCm+99RZuvvlmlJeX4+qrrx7ArxgRDVuCiGgQ3HfffWLcuHHC4/HEPebee+8V1dXVQlGU0HOPPfaYcDgcoqenJ+r4xYsXi0mTJkU939nZKQoKCsQTTzwR917t7e0CgHjllVfCni8tLRW/+c1vQo+LiorEsmXLwo6ZNWuWuP322+Nem4g+3TgtSESDYuXKlTjnnHNwxx13YNSoUZg2bRruvvtuuN3u0DHr1q3DhRdeCFnu+9F00UUXwe12Y8uWLSnf680330R3dzfy8vIwZ84cjBw5Eueddx7eeeed0DHFxcU45ZRTsGLFCnR2dkJVVTz33HNwu91YsGBB6LhzzjkHK1euRFNTE4QQWL16NXbv3o2LL764n18RIjpRMbgiokGxf/9+/O1vf4PL5cKrr76KpUuX4vnnn8d3vvOd0DENDQ2orKwMO09/3NDQkNa9AODHP/4xfvSjH2HVqlU49dRTsWDBAmzfvj103FtvvYX6+noUFxfDZrPhP//zP7Fy5UqccsopoWOeffZZlJaWorKyElarFRdffDGWLVuGCy+8MKOvAxGd+FhzRUSDQlVVlJeX46mnnoLZrP3o8fl8+NrXvoZHH30UpaWlMc+TJCns/6nQC+DvvfdeXHnllQCAWbNmYc2aNfi///s/LFu2DEII3HLLLTCbzVizZg2Kiorw4osv4utf/zrefvttzJ49GwDw05/+FAcOHMCqVatQVVWFNWvW4NZbb8XIkSNx6aWXZvz1IKITF4MrIhoUo0aNwvjx40OBFQDMmDEDAHD48GGUlpZi1KhRaGxsDDtPfxyZ0UqkqqoKADB9+vSw56dPn47Dhw8DAN5++22sXLkyLFt22mmnYd26dXj44Yfxl7/8Bfv378evf/1rrF+/HnPnzgUAzJw5Ex999BH+53/+h8EVEcXEaUEiGhTz58/H/v37w9oq7N69GwAwfvx4AMDZZ5+Nt956C6qqho75xz/+AYfDgdNPPz2texmvb7yffi+XywUAYasH9cdCCAAI1YMZa8AijyEiisTgiogGxV133YXm5mbccsst2L17N95++23cdddd+OY3v4mSkhIAwE033YTOzk585zvfwfbt2/HKK6/gJz/5CW699VY4nc7QtXbs2IGtW7eisbERPp8PW7duxdatW+Hz+QAAkyZNwpVXXomf//zneOONN7B3717ce++92LVrF773ve8BAObNm4eKigpcd9112Lx5M/bt24elS5eitrYWX/nKVwAAJ598MqZOnYpbbrkF69atw8GDB/H73/8ef/7zn3H55ZcP8leQiIaNoV2sSESfJrW1tWLOnDnCZrOJcePGibvuuku4XK6wY95//31x1llnCZvNJkaOHCkWLVokAoFA2DHjxo0TAKL+O3jwYOgYl8slbrnlFlFRUSHy8/PFOeecI959992w62zZskVccsklory8XDidTjFz5kzx+9//PuyY/fv3i6uuukpUVlYKu90uTjrpJLF06dKwdhFEREaSEMxtExEREWULpwWJiIiIsojBFREREVEWMbgiIiIiyiIGV0RERERZxOCKiIiI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\n",
      "text/plain": [
       "<Figure size 720x360 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# matplotlib.style.use('ggplot')\n",
    "# fig = plt.figure(figsize=(10,5))\n",
    "# ax = fig.add_subplot(1,1,1)\n",
    "# ax.plot(data.stock_return)\n",
    "# ax.plot(data.strategy_return)\n",
    "# plt.title(code)\n",
    "# plt.legend()\n",
    "# plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x11fe6bb90>"
      ]
     },
     "execution_count": 49,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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QwO+9a1vxR33tNNOww9/+EN85StfQUdHR1bncuedd+LDDz9EQ0MDzjvvPKNvedGiRXjttdewaNEibNiwAVdddRXWrVuHCy+8EB988MGQHEFHRERENNRknCNcSsNljjDlhnOEaTDwfULZ4PuEssX3SnlJNUeYFWEiIiIiGpZ2tAVw0TPbsas9kNf9uVhuENx2223417/+FXfZtddeGzeSjoiIiIjS23hIWzO16XA/Ztblvi8Cg/AguPvuuwf7FIiIiIjKR56NvmyNICIiIqJhKcXk2qwxCBMRERHRsKbmWRJmECYiIiKiYUkvCOc7Ao1BOAtPPPEEAoHcVyOuXLkypw00BkJTUxP+8pe/DPZpEBERERVMQGG9EQzCWfjVr36VMgjLspzyfs8//zyOHDlSqtNKSZKklNflG4TTPU8iIiKiwZTvrhgMwgn8fj+uueYaNDQ0YMGCBXjooYdw5MgRLF26FEuWLAEAzJw5E/fffz8WL16MTZs24Wc/+xm+8IUvYMGCBbjlllugqipeffVVfPjhh/jud7+LRYsWIRAI4KOPPsKll16KCy64AMuWLTNC8pYtW9DQ0IAvfvGLuPPOO7FgwQIAwJe//GVjW2UAuOiii/Dvf//b8rwffPBB3HLLLbjyyitxww03QJZl3HnnnfjCF76AhoYGY1e6u+++G++//z4WLVqEX/7yl1i5ciVuv/124zhf+cpXsHbtWsvnefrpp+OBBx7A+eefj4ULF2L37t3F/wMgIiIiylaBi+WG7Pi0X208gn2dwaIec1qNG9eeMjbtbd566y2MGzfOCI49PT1YuXIlnn/+edTW1gLQwvLs2bNx8803A9AC43/+538CAK6//nr8/e9/x+LFi/HUU0/hhz/8IU466SREIhH84Ac/wG9+8xvU1dXhpZdewk9/+lM89NBDuOmmm/DTn/4Up556atxotSuvvBLPPfccTjjhBOzZswfhcBjHH398ynP/6KOP8Je//AUejwe///3vUVlZiVWrViEUCuHiiy/Gueeei9tuuw2PP/44fve73wHQ2jdSSXyeAFBbW4vXX38dTz31FB5//HE88MADaV9PIiIiolIpMAezIpxozpw5eO+993DXXXdhw4YNqKqqSrqNzWbDhRdeaPy+du1aLF68GAsXLsTatWuxc+fOpPvs2bMHO3bswBVXXIFFixbh4YcfRnNz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\n",
      "text/plain": [
       "<Figure size 864x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "data[['stock_return','strategy_return']].plot(figsize=(12,8), grid =True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "---\n",
    "\n",
    "### 5.策略编写与实盘差异\n",
    "\n",
    "#### 5.1 策略账号操作对盘面价格的影响\n",
    "\n",
    "    未考虑交易滑点。实盘交易中，如果满足操作条件时实盘成交量较小，策略账号进行操作可能会对盘面价格产生一定影响，导致当次操作成交均价偏离期望成交价，由此产生滑点（一般对收益产生负影响, 策略回测表现优于实盘表现）。\n",
    "    \n",
    "#### 5.2 交易费用\n",
    "     \n",
    "    未考虑交易手续费。对于交易频率较低的策略，交易手续费对回测结果的影响较小；对于交易频率较高的策略，交易手续费可能决定策略回测结果是否为正。（策略回测表现优于实盘表现）\n",
    "    \n",
    "#### 5.3 策略回测执行价实盘是否执行\n",
    "\n",
    "1.期望开仓价是否执行  \n",
    "\n",
    "    本策略回测中期望开仓价定为均线价格加一定倍数的标准差，实盘中可能面临以下情况：\n",
    " - 开仓执行当日开盘时涨停，实盘中无法成交。\n",
    " - 期望开仓价恰好为涨停价，实盘中可能无法成交。\n",
    " - 期望开仓价距离涨停价较近，实盘中价格上涨突破期望开仓价时因交易不活跃等原因直接跳价到涨停价或因交易系统产生并发送交易信号时间慢于价格快速上涨到涨停的时间，实盘中无法成交。  \n",
    "    \n",
    "    \n",
    "2.期望止损价是否执行  \n",
    "\n",
    "    本策略回测中期望止损价定为均线价格和开仓价格的最大值，实盘中可能面临以下情况：\n",
    " - 止损执行当日开盘价低于期望止损价，满足止损条件，应以开盘价执行。（期望止损价更优于开盘价，策略回测表现优于实盘表现）\n",
    " - 止损执行当日开盘时跌停，实盘中无法成交。\n",
    " - 期望止损价恰好为跌停价，实盘中可能无法成交。\n",
    " - 期望止损价距离跌停板较近，实盘中价格下跌突破期望止损价时因交易不活跃等原因直接跳价到跌停价或因交易系统产生并发送交易信号时间慢于价格快速下跌到跌停的时间，实盘中无法成交。  \n",
    "    \n",
    "    \n",
    "#### 5.4 策略信号执行优先级\n",
    "\n",
    "    因策略回测使用日线级数据，当日内同时满足多个操作条件，如同时满足开仓信号、止损信号，回测将无法辨别信号出现先后顺序，由此使用信号执行优先级方式近似计算策略收益情况。该种方式将产生一定偏差。\n",
    "    \n",
    "1.开仓当日同时满足开仓、止损条件\n",
    "\n",
    "    策略回测中，如开仓当日同时满足开仓、止损条件，则假设进行一次完整交易，先开仓，后以第二日开盘价平仓。\n",
    "    实盘中当日如果先满足止损条件（此时未持仓），后满足开仓条件，则第二日不进行平仓操作。（因策略收益特点类似看涨期权，因此实盘表现可能优于策略回测表现）\n",
    "    \n",
    "2.平仓当日同时满足止盈、止损条件\n",
    "\n",
    "    策略回测中，如平仓当日同时满足止盈、止损条件，则以止盈价进行平仓。\n",
    "    实盘中当日如果先满足止损条件（此时有持仓），后满足止盈条件，则以止损价进行平仓操作。（策略回测表现优于实盘表现）"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
